The Internet is a worldwide network of interconnected computers allowing users to transmit, access and obtain files from other computers and users on the network. In recent years, the Internet is becoming used more and more for new real-time applications such as allowing telephone callers to place voice telephone calls over the Internet. In addition, other real-time interactive applications such as videoconferencing allow users to conduct meetings over the network without having to physically travel to the meeting location or incur long distance communication charges.
The performance of these network applications, however, has generally disappointed users due to the vagaries of the performance and reliability of interactive communication applications over packet-based networks such as the Internet. The Internet was not originally designed for interactive communication, but rather, for the bulk transport of packets of digital data using non-interactive protocols, such as sending electronic mail (“E-mail”), File Transfer Protocol (“FTP”), and network news, i.e., USENET. Regardless, a number of real-time protocols have been designed and marketed, including RealAudio by RealNetworks, NetMeeting by Microsoft, and many others.
The performance of the network implementing these applications, however, is difficult for network operators to monitor and determine. The performance of interactive network application software operating over the Internet or other packet-based networks depends on the ability of the network to deliver digital packets of audio and video information between callers. Internet packet delivery delay and loss dynamics, however, can be extremely variable. Packet delay and loss characteristics between two callers or hosts devices may remain stationary for an hour or more, or they may change dramatically second-by-second. Different pairs of host devices communicating over the same network may also experience different network performance dynamics due to available network bandwidth and background traffic patterns. This temporal and spatial heterogeneity of the network performance makes it difficult to monitor the performance of the network. Without visibility of network performance, operators have difficulty identifying and addressing trouble areas to improve performance.
Today, network edge devices such as gateway devices that deliver packets between host devices can generate statistics on the packet delivery performance of particular call connections, also referred to as sessions. On a per-connection basis, network performance statistics such as the delay in delivering packets, packets loss, and jitter are routinely generated. On an individual connection between a pair of host devices, this network performance data can provide a snapshot of the packet delivery performance between a pair of host devices. Although this per-connection network performance data is available for an ongoing session or connection, a need exists for utilizing network packet delivery performance information for detecting network trouble areas or to provide an overall view of network performance.